This allows using the category without having to call a function from the
hot paths of the renderer.
#include "gsktransformprivate.h"
-typedef struct _GskTransformClass GskTransformClass;
-
-struct _GskTransform
-{
- const GskTransformClass *transform_class;
-
- GskTransformCategory category;
- GskTransform *next;
-};
-
struct _GskTransformClass
{
gsize struct_size;
* Returns: The category of the transform
**/
GskTransformCategory
-gsk_transform_get_category (GskTransform *self)
+(gsk_transform_get_category) (GskTransform *self)
{
if (self == NULL)
return GSK_TRANSFORM_CATEGORY_IDENTITY;
G_BEGIN_DECLS
+typedef struct _GskTransformClass GskTransformClass;
+
+struct _GskTransform
+{
+ const GskTransformClass *transform_class;
+
+ GskTransformCategory category;
+ GskTransform *next;
+};
gboolean gsk_transform_parser_parse (GtkCssParser *parser,
GskTransform **out_transform);
const graphene_rect_t *r,
graphene_quad_t *res);
+#define gsk_transform_get_category(t) ((t) ? (t)->category : GSK_TRANSFORM_CATEGORY_IDENTITY)
+
G_END_DECLS
#endif /* __GSK_TRANSFORM_PRIVATE_H__ */